package descricaoProduto;
// Generated 09/09/2011 18:25:04 by Hibernate Tools 3.2.1.GA

import controleFalta.ControleFalta;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToOne;
import javax.persistence.Table;
import subCategoria.SubCategoria;

/**
 * DescricaoProduto generated by hbm2java
 */
@Entity
@Table(name = "descricao_produto", schema = "public")
public class DescricaoProduto implements java.io.Serializable {

    private int idDescricaoProduto;
    private ControleFalta controleFalta;
    private SubCategoria objSubCategoria;
    private String decsricaoProduto;
    private String tipoProduto;
    private Boolean statusDrescicaoProduto;
    private Integer idUnidadeMedida;

    public DescricaoProduto() {
    }

    public DescricaoProduto(int idDescricaoProduto) {
        this.idDescricaoProduto = idDescricaoProduto;
    }

    public DescricaoProduto(int idDescricaoProduto, ControleFalta controleFalta, SubCategoria objSubCategoria, String decsricaoProduto, String tipoProduto, Boolean statusDrescicaoProduto, Integer idUnidadeMedida) {
        this.idDescricaoProduto = idDescricaoProduto;
        this.controleFalta = controleFalta;
        this.objSubCategoria = objSubCategoria;
        this.decsricaoProduto = decsricaoProduto;
        this.tipoProduto = tipoProduto;
        this.statusDrescicaoProduto = statusDrescicaoProduto;
        this.idUnidadeMedida = idUnidadeMedida;
    }

    @Id
    @Column(name = "id_descricao_produto", unique = true, nullable = true)
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    public int getIdDescricaoProduto() {
        return this.idDescricaoProduto;
    }

    public void setIdDescricaoProduto(int idDescricaoProduto) {
        this.idDescricaoProduto = idDescricaoProduto;
    }

    @OneToOne(fetch = FetchType.EAGER)
    @JoinColumn(name = "id_controle_falta")
    public ControleFalta getControleFalta() {
        return this.controleFalta;
    }

    public void setControleFalta(ControleFalta controleFalta) {
        this.controleFalta = controleFalta;
    }

    @ManyToOne(fetch = FetchType.EAGER)
    @JoinColumn(name = "id_sub_categoria")
    public SubCategoria getobjSubCategoria() {
        return this.objSubCategoria;
    }

    public void setobjSubCategoria(SubCategoria objSubCategoria) {
        this.objSubCategoria = objSubCategoria;
    }

    @Column(name = "decsricao_produto", length = 100)
    public String getDecsricaoProduto() {
        return this.decsricaoProduto;
    }

    public void setDecsricaoProduto(String decsricaoProduto) {
        this.decsricaoProduto = decsricaoProduto;
    }

    @Column(name = "tipo_produto", length = 100)
    public String getTipoProduto() {
        return this.tipoProduto;
    }

    public void setTipoProduto(String tipoProduto) {
        this.tipoProduto = tipoProduto;
    }

    @Column(name = "status_drescicao_produto")
    public Boolean getStatusDrescicaoProduto() {
        return this.statusDrescicaoProduto;
    }

    public void setStatusDrescicaoProduto(Boolean statusDrescicaoProduto) {
        this.statusDrescicaoProduto = statusDrescicaoProduto;
    }

    @Column(name = "id_unidade_medida")
    public Integer getIdUnidadeMedida() {
        return this.idUnidadeMedida;
    }

    public void setIdUnidadeMedida(Integer idUnidadeMedida) {
        this.idUnidadeMedida = idUnidadeMedida;
    }
}